3.Pandas赋值及数据操作 |
您所在的位置:网站首页 › python读取csv某一列 pandas › 3.Pandas赋值及数据操作 |
文章目录
0 引言1 Pandas赋值2 Pandas数据操作
0 引言
Pandas处理表格的数据时,有时候需要对某一行或者某一列的一个值需要赋值,有时候也需要其他的数据操作,比如删除,更改等操作。 1 Pandas赋值 import pandas as pd import numpy as np生成DataFrame表格数据 dates = np.arange(20200101,20200107) df1 = pd.DataFrame(np.arange(24).reshape((6,4)),index=dates,columns=['A','B','C','D']) df1 ABCD20200101012320200102456720200103891011202001041213141520200105161718192020010620212223 df1.iloc[2,2] 10对具体位置重新赋值 df1.iloc[2,2] = 100 df1 ABCD202001010123202001024567202001038910011202001041213141520200105161718192020010620212223通过标签和表头来重新赋值 df1.loc[20200102,'B'] = 200 df1 ABCD20200101012320200102420067202001038910011202001041213141520200105161718192020010620212223先判断某行某列满足某个条件,然后赋值 df1[df1.A > 10] = 0 df1 ABCD20200101012320200102420067202001038910011202001040000202001050000202001060000 df1.A[df1.A == 0] = 1 df1 ABCD20200101112320200102420067202001038910011202001041000202001051000202001061000 2 Pandas数据操作添加指定列 df1['E'] = 10 # 添加一列 df1 ABCDE20200101112310202001024200671020200103891001110202001041000102020010510001020200106100010调用Series添加指定列 df1['F'] = pd.Series([1,2,3,4,5,6],index=dates) df1 ABCDEF20200101112310120200102420067102202001038910011103202001041000104202001051000105202001061000106对某行某列的值进行修改 df1.loc[20200107,['A','B','C']] = [1,2,3] df1 ABCDEF202001011.01.02.03.010.01.0202001024.0200.06.07.010.02.0202001038.09.0100.011.010.03.0202001041.00.00.00.010.04.0202001051.00.00.00.010.05.0202001061.00.00.00.010.06.0202001071.02.03.0NaNNaNNaN调用 .append 函数来实现添加指定行 s1 = pd.Series([1,2,3,4,5,6],index=['A','B','C','D','E','F']) s1.name = 'S1' df2 = df1.append(s1) df2 ABCDEF202001011.01.02.03.010.01.0202001024.0200.06.07.010.02.0202001038.09.0100.011.010.03.0202001041.00.00.00.010.04.0202001051.00.00.00.010.05.0202001061.00.00.00.010.06.0202001071.02.03.0NaNNaNNaNS11.02.03.04.05.06.0调用 .insert 在具体位置插入列 df1.insert(1,'G',df2['E']) # 在第一列插入索引为G的df2中的E列 df1 AGBCDEF202001011.010.01.02.03.010.01.0202001024.010.0200.06.07.010.02.0202001038.010.09.0100.011.010.03.0202001041.010.00.00.00.010.04.0202001051.010.00.00.00.010.05.0202001061.010.00.00.00.010.06.0202001071.0NaN2.03.0NaNNaNNaN调用 .pop 弹出某列,并调用 .insert 插入某列 g = df1.pop('G') # 弹出G列 df1.insert(6,'G',g) # 在最后插入 df1 ABCDEFG202001011.01.02.03.010.01.010.0202001024.0200.06.07.010.02.010.0202001038.09.0100.011.010.03.010.0202001041.00.00.00.010.04.010.0202001051.00.00.00.010.05.010.0202001061.00.00.00.010.06.010.0202001071.02.03.0NaNNaNNaNNaN调用 del 删除某列 del df1['G'] # 删除G列 df1 ABCDEF202001011.01.02.03.010.01.0202001024.0200.06.07.010.02.0202001038.09.0100.011.010.03.0202001041.00.00.00.010.04.0202001051.00.00.00.010.05.0202001061.00.00.00.010.06.0202001071.02.03.0NaNNaNNaN调用 .drop 删除指定列 df2 = df1.drop(['A','B'],axis=1) # 删除AB列 df2 CDEF202001012.03.010.01.0202001026.07.010.02.020200103100.011.010.03.0202001040.00.010.04.0202001050.00.010.05.0202001060.00.010.06.0202001073.0NaNNaNNaN调用 .drop 删除某行 df2 = df1.drop([20200101,20200102],axis=0) #删除行 df2 ABCDEF202001038.09.0100.011.010.03.0202001041.00.00.00.010.04.0202001051.00.00.00.010.05.0202001061.00.00.00.010.06.0202001071.02.03.0NaNNaNNaN |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |